from lxml import etree


parser = etree.HTMLParser(encoding="utf-8")
# 解析本地文件
tree = etree.parse('xpath基础使用.html', parser=parser)

# // 代表所有的后代，  / 代表子代
li_list = tree.xpath('//body/ul/li')

# 查看带有id的标签
li_list = tree.xpath('//ul/li[@id]')

# 查看id为 l2 的标签
li_list = tree.xpath('//ul/li[@id="l2"]/text()')

# 查找 id 为 l1的标签的class属性
li_list = tree.xpath('//ul/li[@id="l1"]/@class')

# 模糊查询
li_list = tree.xpath('//ul/li[contains(@id, "l")]/text()')


#
print(li_list)
print(len(li_list))
